home *** CD-ROM | disk | FTP | other *** search
/ 2,000 Greater & Lesser Mysteries / 2,000 Greater and Lesser Mysteries.iso / computer / virus / mys00449.txt < prev    next >
Encoding:
Text File  |  1994-06-10  |  20.6 KB  |  553 lines

  1.  
  2.  
  3.  
  4.  
  5.                 COMPUTER VIRUSES: A RATIONAL VIEW
  6.  
  7.                       by: Raymond M. Glath
  8.                             President
  9.  
  10.                     RG Software Systems, Inc.
  11.                        2300 Computer Ave.
  12.                            Suite I-51
  13.                      Willow Grove, PA 19090
  14.                          (215) 659-5300
  15.  
  16.  
  17. April 14, 1988
  18.  
  19.  
  20. WHAT ARE COMPUTER VIRUSES?
  21. (a.k.a. Trojan Horses, Worms, Time Bombs, Sabotage)
  22.  
  23. Any software that has been developed specifically for the purpose
  24. of interfering with a computer's normal operations.
  25.  
  26.  
  27. WHAT DO THEY DO?
  28.  
  29. There are two major categories of viruses.
  30.  
  31. Destructive viruses, that cause:
  32.  
  33.      Massive destruction...
  34.           ie: Low level format  of disk(s),  whereby any programs
  35.                and data on the disk are not recoverable.
  36.  
  37.      Partial destruction...
  38.           ie: Erasure or modification of a portion of a disk.
  39.  
  40.      Selective destruction...
  41.           ie: Erasure  or modification  of specific files or file
  42.                groups.
  43.  
  44.      Random havoc... The most insidious form of all.
  45.           ie: Randomly changing data on  disk  or  in  RAM during
  46.                normal program applications, or changing keystroke
  47.                values, or  data from  other input/output devices,
  48.                with the result being an inordinate amount of time
  49.                to discover and  repair  the  problem,  and damage
  50.                that may never be known about.
  51.  
  52. Non-Destructive  viruses, intended  to cause  attention to the
  53.      author or to harass the end user.
  54.  
  55.      a. Annoyances...
  56.           ie:  Displaying  a  message,  changing  display colors,
  57.                changing  keystroke  values  such as reversing the
  58.                effect of the Shift and Unshift keys, etc.
  59.  
  60.  
  61. WHAT IS THE IMPACT OF A VIRUS ATTACK BEYOND THE OBVIOUS?
  62.  
  63. Lost productivity time !!!
  64.  
  65. In addition to  the  time  and  skills  required  to re-construct
  66. damaged data files, viruses can waste a lot of time in many other
  67. ways.
  68.  
  69. With either type of virus, the person subjected to the  attack as
  70. well as  many support  personnel from  the attacked site and from
  71. various  suppliers,  will  sacrifice  many  hours   of  otherwise
  72. productive time:
  73.  
  74.      Time to determine the cause of the attack.
  75.      The removal of the virus code from the system.
  76.      The recovery of lost data.
  77.      The detective work required to locate the original source of
  78.           the virus code.
  79.  
  80.      Then, there's the management time required to determine  how
  81.           this will be prevented in the future.
  82.  
  83.  
  84. WHO DEVELOPS VIRUSES?
  85.  
  86. This individual, regardless of his specific motivation, will most
  87. probably want to see  some form  of publicity  resulting from his
  88. handiwork.  Anywhere  from  a  "Gotcha"  message appearing on the
  89. computer's screen after the  attack, to  major press  coverage of
  90. that particular virus' spread and wake of damage.
  91.  
  92. Some of  the reasons for someone to spend their time developing a
  93. virus program are:
  94.  
  95.      A practical joke.
  96.      A personal vendetta against a company or  another person.
  97.           ie: a disgruntled employee.
  98.      The computer-literate political terrorist.
  99.      Someone  trying  to  gain  publicity  for  some cause or
  100.           product.
  101.      The bored, un-noticed "genius," who wants attention.
  102.      The mentally disturbed sociopath.
  103.  
  104.  
  105. IS THE THREAT REAL?
  106.  
  107. Yes, however thus far the destructive ones have primarily been in
  108. the Academic environment. Several attacks have been documented by
  109. the press, and, from first hand experience, I  can attest  to the
  110. fact that  those reported do exist. We have seen some of them and
  111. successfully tested our Disk Watcher product against them.
  112.  
  113. Reputable individuals have reported additional viruses to us, but
  114. these have  not reached the scale of distribution achieved by the
  115. now  infamous  "Lehigh,"  "Brain,"   "Israeli,"  and  "MacIntosh"
  116. viruses.
  117.  
  118. We do  expect the  situation to  worsen due to the attention it's
  119. received. Taking simple lessons  from history,  a new phenomenon,
  120. once  given  attention,  will  be  replicated  by individuals who
  121. otherwise have no opportunity for personal attention.
  122.  
  123. Now that there are products for  defense from  viruses, the virus
  124. writers have  been given  a challenge;  and for  those people who
  125. have always wanted  to  anonymously  strike  out  at  someone but
  126. didn't know  of a  method to  do so,  the coverage has provided a
  127. "How To" guide.
  128.  
  129.  
  130. HOW DOES A VIRUS GET INTO YOUR COMPUTER SYSTEM?
  131.  
  132. A virus may be entered into a system by an  unsuspecting user who
  133. has been  duped by the virus creator (Covert entry), or it may be
  134. entered directly by the creator. (Overt entry.)
  135.  
  136.      Examples of Covert  entry  of  a  virus  into  a computer
  137.           system.
  138.  
  139.           A  "carrier" program  such as  a "pirate" copy of a
  140.              commercial package that has been tampered with, is
  141.              utilized  by  the  un-suspecting  user,  and  thus
  142.              enters the virus code into the system.
  143.  
  144.              Other types  of  carriers  could  be  programs from
  145.              Bulletin  Boards  that  have  been either tampered
  146.              with  or  specifically  designed  as  viruses, but
  147.              disguised as  useful programs. There has even been
  148.              a  destructive  virus   disguised   as   a  "virus
  149.              protection" program on a BBS.
  150.  
  151.           The  user  unknowingly acquires an "infected" disk
  152.              and uses it to boot the system.
  153.  
  154.              The virus has been hidden in  the system  files and
  155.              then hides  itself in  system RAM  or other system
  156.              files in order to reproduce, and later, attack.
  157.  
  158.  
  159.      Examples of Overt entry into a computer system.
  160.  
  161.           An  individual  bent  on  harassing  the  user  or
  162.              sabotaging   the   computer  system,  modifies  an
  163.              existing program  on  that  computer  or  copies a
  164.              virus  program  onto  someone's  disk during their
  165.              absence from their work station.
  166.  
  167.  
  168. HOW DOES A VIRUS SPREAD?
  169.  
  170. A virus may reproduce itself by delaying its attack until  it has
  171. made copies  of itself onto other disks (Active reproduction,) or
  172. it may depend entirely on unsuspecting users to make copies of it
  173. and pass  them around  (Passive reproduction).  It may also use a
  174. combination of these methods.
  175.  
  176.  
  177. WHAT TRIGGERS THE VIRUS ATTACK?
  178.  
  179. Attacks begin upon the occurrence of a certain event, such as:
  180.  
  181.      On a certain date.
  182.      At a certain time of day.
  183.      When a certain job is run.
  184.      After "cloning" itself n times.
  185.      When a certain combination of keystrokes occurs.
  186.      When the computer is restarted.
  187.  
  188. One way or  another,  the  virus  code  must  put  itself  into a
  189. position to  either start  itself when the computer is turned on,
  190. or when a specific program is run.
  191.  
  192.  
  193. HOW DOES ONE DISTINGUISH A VIRUS FROM A "BUG" IN  A PROGRAM  OR A
  194. HARDWARE MALFUNCTION?
  195.  
  196. This can  be a tough one. With the publicity surrounding viruses,
  197. many people are ready  to  believe  that  any  strange occurrence
  198. while computing  may have  been caused  by a virus, when it could
  199. simply be an operational error, hardware component failure,  or a
  200. software "bug."
  201.  
  202. While  most  commercial  software  developers test their products
  203. exhaustively,  there  is  always   the   possibility   that  some
  204. combination of hardware; mix of installed TSR's; user actions; or
  205. slight incompatibilities with "compatible" or "clone" machines or
  206. components; can cause a problem to surface.
  207.  
  208. We need to remember some key points here:
  209.  
  210. 1. Examine the probabilities of your having contacted a virus.
  211.  
  212. 2. Don't  just assume  that you've  been attacked  by a virus and
  213.      abandon  your  normal  troubleshooting  techniques  or those
  214.      recommended by the product manufacturers.
  215.  
  216. 3. When  in doubt  contact your  supplier or the manufacturer for
  217.      tech support.
  218.  
  219. 4. Having  an effective  "Virus Protection"  system installed may
  220.      help you determine the cause of the problem.
  221.  
  222.  
  223. HOW CAN YOU AVOID COMING IN CONTACT WITH VIRUSES?
  224.  
  225. 1.  Know  and  be  comfortable  with  the source of your software
  226.      acquisitions.
  227.  
  228.      If you use a BBS (Bulletin Board,) verify that the BBS is
  229.         reputable  and  that  it has satisfactory procedures in
  230.         place to check out its software  as well  as provisions
  231.         to prevent that software from being modified.
  232.  
  233.      Do not use illegitimate copies of software.
  234.  
  235.      Be  sure that  the developer of the software you're using
  236.         is a professional. Note that many  "Shareware" products
  237.         are  professionally  produced.  You  needn't stop using
  238.         them. Just be sure that you  have a  legitimate copy of
  239.         the program if you choose to use these products.
  240.  
  241.      Don't  accept  free  software  that looks too good to be
  242.         true.
  243.  
  244. 2.  Install  a  professional  virus  protection  package  on your
  245.      computer that will alert you to any strange goings on.
  246.  
  247. 3.  Provide physical security for your computers.
  248.      ie: Locked rooms; locks on the computers; etc.
  249.  
  250. 4.  If you're unsure of a disk or a specific program, run it in an
  251.      isolated environment  where it  will not  be able  to do any
  252.      damage.
  253.  
  254.      ie: Run  the program on a "diskette only" computer, and keep
  255.           a write-protect tab on your "System Disk."
  256.  
  257.          Run  the   program  with   "Virus  Protection"  software
  258.           installed.
  259.  
  260. 5.  Establish and maintain a sound Back-Up policy.
  261.  
  262.      DO  NOT   USE  ONLY  ONE  SET  OF  BACK-UP  DISKS  THAT  ARE
  263.      CONTINUOUSLY WRITTEN OVER.
  264.  
  265.      Use at least three complete sets of back-up disks that are
  266.       rotated in a regular cycle.
  267.  
  268.  
  269. DO YOU  NEED SOME  FORM OF PROTECTION FROM VIRUSES?
  270.  
  271. It couldn't hurt !!!  You do lock the door to your home
  272.   when you go out, right?
  273.  
  274. Plan in advance the methods you'll use to ward off virus attacks.
  275. It's a  far more  effective use  of management  time to establish
  276. preventative  measures  in  a  calm environment instead of making
  277. panic decisions after a virus attack has occurred.
  278.  
  279.  
  280. IS THERE ANY SOLUTION AVAILABLE THAT'S ABSOLUTELY FOOLPROOF?
  281.  
  282. No !!!
  283.  
  284. Any  security  system  can  be  broken  by  someone dedicated and
  285. knowledgeable enough to put forth the effort to break the system.
  286.  
  287.  
  288. WHAT LEVEL OF PROTECTION DO YOU NEED?
  289.  
  290. This of course depends on many factors, such as:
  291.  
  292.      1. The sensitivity of the data on your PC's.
  293.      2. The number of personnel having access to your PC's.
  294.      3. The security awareness of computing personnel.
  295.      4. The skill levels of computing personnel.
  296.      5. Attitudes, ethics, and morale of computing personnel.
  297.  
  298. A key point of consideration is the threshold  for the  amount of
  299. security you can use versus its impact on normal productivity.
  300.  
  301. Human nature  must also  be considered. If you were to install 10
  302. locks on your front door and it cost you 5 minutes each  time you
  303. enter  your  home,  I'll  bet  that  the  first  time  that  it's
  304. raining... and you have 3 bags of groceries... you'll go  back to
  305. using the one lock you always used.
  306.  
  307.  
  308. HOW CAN A SOFTWARE PRODUCT PROTECT AGAINST VIRUSES?
  309.  
  310. There are several approaches that have been developed.
  311.  
  312. One form  is an "inoculation" or "signature" process, whereby the
  313. key files on a disk are marked in a special  way and periodically
  314. checked to see if the files have been changed.  Depending on the
  315. way in which this is implemented, this method can actually interfere
  316. with programs that have built-in integrity checks.
  317.  
  318. Another method  is to  "Write Protect"  specific key areas of the
  319. disk so that no software is permitted to change the data in those
  320. places.
  321.  
  322. We  at  RG  Software  Systems,  Inc.  believe  that  preventative
  323. measures are the most effective. The Disk Watcher system provides
  324. multiple lines  of defense:  A "Batch" type program automatically
  325. checks all active disk drives for the presence  of certain hidden
  326. virus  characteristics  when  the  computer is started, and a TSR
  327. (Terminate and Stay Resident) program monitors  ongoing disk
  328. activity  throughout  all processing. The "Batch" program
  329. can also be run on demand at any time to check the disk in a
  330. specific drive.
  331.  
  332. The TSR program, in addition to its other "Disaster
  333. Prevention" features, contains a series of proprietary algorithms
  334. that detect the behavior characteristics of a myriad of virus
  335. programs, and yet produce minimal  overhead in processing time
  336. and "false alarm" reports. Disk  Watcher is uniquely able to tell
  337. the difference between legitimate IO  activity and  the IO activity
  338. of a virus program.
  339.  
  340. When an action occurs indicative of a virus attempting to reproduce itself;
  341. alter  another program; set itself up  to be  automatically run  the next
  342. time the system is started; or attempting to perform a massively damaging
  343. act; Disk Watcher  will  automatically  "pop  up."  The user will then have
  344. several options, one of which is to immediately stop the computer before any
  345. damage can be done. Detection occurs BEFORE the action takes place.
  346.  
  347. Other options allow the user to tell Disk Watcher to continue the
  348. application program  and remember  that this program is permitted
  349. to perform the action that triggered the "pop up."
  350.  
  351.    Some very important features of Disk Watcher are:
  352.  
  353.    Whenever the user selects the "Stop the Computer" option, the
  354.    Application screen image and the Disk Watcher screen image will be
  355.    sent to the system printer before the machine is stopped, so that
  356.    an effective analysis of the problem may be done.
  357.  
  358.    Disk Watcher performs an integrity check on itself whenever it runs.
  359.  
  360. The  "Destructive"   viruses   that   produce   "selective"  file
  361. destruction or  "Random Havoc"  are the  most difficult to defend
  362. against. The best measures are to prevent them  from getting into
  363. the system in the first place.
  364.  
  365.  
  366. WHICH VIRUS PROTECTION PACKAGE IS RIGHT FOR YOU?
  367.  
  368. Since the first reports of virus attacks appeared in the press, a
  369. number of  "Virus Prevention"  products have  quickly appeared on
  370. the market, produced by companies wishing to take  advantage of a
  371. unique market  opportunity. This  is to  be expected. RG Software
  372. Systems, Inc. is one of them with our Disk Watcher product.
  373.  
  374. It should be pointed out, however, that as of this  writing, only
  375. a  little  over  2  months  has  transpired since the first major
  376. stories appeared.
  377.  
  378. Those companies  that have  had to  build a  product from scratch
  379. during  this  limited  amount  of  time  have  had  to design the
  380. defensive  system,  write  the  program  code,  write  the user's
  381. manual,  design  the  packaging,  "Alpha"  test, "Beta" test, and
  382. bring their product through manufacturing to market. A monumental
  383. task in a miraculously short period of time.
  384.  
  385. Companies that have had products on the market that include virus
  386. protection, or  products  that  were  enhanced  to  include virus
  387. protection, such  as Disk  Watcher, have had extra time and field
  388. experience for the stabilization of their products.
  389.  
  390. As a  professional in  this industry,  I sincerely  hope that the
  391. quickly developed products are stable in their released form.
  392.  
  393. The evaluation points listed below are usually applied as a
  394. standard for all types of software products:
  395.  
  396.  
  397.          *Price
  398.          *Performance
  399.          *Ease of Use
  400.          *Ease of Learning
  401.          *Ease of Installation
  402.          *Documentation
  403.          *Copy Protection
  404.          *Support
  405.  
  406. A "Virus Protection" package, like a security system for your
  407. home, requires a close scrutiny.  You want the system to do the
  408. job unobtrusively, and yet be effective.
  409.  
  410. TWELVE SPECIAL CONSIDERATIONS FOR VIRUS PROTECTION PACKAGES:
  411.  
  412. 1.  Amount  of  impact  the  package  may have on your computer's
  413.      performance.
  414.  
  415.      If the package is  "RAM Resident,"  does it  noticeably slow
  416.           down your machine's operations?
  417.      If so,  with what type of operation?  Are program start-
  418.           ups slowed? Are database operations slowed?
  419.  
  420.  
  421. 2. Level of dependency on operator intervention.
  422.  
  423.      Does the package require  the  operator  to  perform certain
  424.           tasks  on  a  regular  basis  in  order  for  it  to be
  425.           effective? (Such as only checking for  virus conditions
  426.           on command.)
  427.      Does  the  package  require  much  time  to install and keep
  428.           operational?  ie:  Each  time   any  new   software  is
  429.           installed on the system, must the protection package be
  430.           used?
  431.  
  432. 3. Impact on productivity... Annoyance level.
  433.  
  434.      Does the package periodically stop processing and/or require
  435.           the  operator  to  take  some  action.  If so, does the
  436.           package have any capability  to  learn  its environment
  437.           and stop its interference?
  438.  
  439. 4. False alarms.
  440.  
  441.      How  does  the  package  handle situations that appear to be
  442.           viruses but are legitimate  actions made  by legitimate
  443.           programs?
  444.      Are there  situations where  legitimate jobs will have to be
  445.           re-run  or  the  system   re-booted   because   of  the
  446.           protection package? How frequently will this occur?
  447.      How  much  additional  end-user  support  will  the  package
  448.           require?
  449.  
  450. 5. The probability that the package will remain in use?
  451.  
  452.      Will there  be any  interference or  usage requirements that
  453.           will  discourage  the  user  from  keeping  the package
  454.           active? (It won't be  effective if  they quickly desire
  455.           to  de-install  it  and  perhaps  only pretend they are
  456.           using it when management is present.)
  457.  
  458. 6. Level of effectiveness it provides in combatting viruses.
  459.  
  460.      Will it be effective  against  viruses  produced  by someone
  461.           with an experience level of:
  462.  
  463.           Level 1 - "Typical End User"? (Basic knowledge of using
  464.                       applications and DOS commands.)
  465.           Level 2 - "Power  User"?   (Knowledge  of  DOS  Command
  466.                       processor, Hardware functions, BASIC
  467.                       programming, etc.)
  468.           Level 3 - "Applications  Programmer"?  (Knowledge of
  469.                       programming languages and DOS service calls.)
  470.           Level 4 - "Systems  Engineer"?  (Knowledge  of  DOS and
  471.                       Hardware internal functions.)
  472.           Level 5 -  "Computer  Science  Professor  that develops
  473.                          viruses for research purposes"?
  474.  
  475.      Which types of intrusion will it be effective against?
  476.  
  477.           "Covert Entry"?
  478.           "Overt Entry"?
  479.  
  480.      Does  it  detect  a  virus  attempting  to spread or "clone"
  481.           itself?
  482.  
  483.      Does it  detect a  virus attempting  to place  itself into a
  484.           position to be automatically run?
  485.  
  486.      If  a  virus  gets  into  the computer, which types of virus
  487.           damage will it detect?
  488.  
  489.           "Massive Destruction"
  490.           "Partial Destruction"
  491.           "Selective Destruction"
  492.           "Random Havoc Destruction"
  493.           "Annoyance"
  494.  
  495.      Does the software detect a  virus  before  or  after  it has
  496.           infected a program or made its attack?
  497.  
  498.      Does the publisher claim total protection from all viruses?
  499.  
  500.  
  501. 7. Does the software provide any assistance for "post mortem"
  502.     analysis of suspected problems?
  503.  
  504.      ie:  If a virus symptom is detected and the computer is
  505.      brought to a halt, is there any supporting information
  506.      for analyzing the problem other than the operator's
  507.      recall of events?
  508.  
  509.  
  510. 8. Impact on your machine's resources.
  511.  
  512.      How much RAM is used?
  513.      Is any special hardware required?
  514.  
  515.  
  516. 9. Is the product compatible with:
  517.  
  518.      Your hardware configuration.
  519.      Your Operating system version.
  520.      Your network.
  521.      Other software that you use, especially TSR's.
  522.  
  523. 10.  Can  the  package  be  used  by  current computing personnel
  524.      without substantial training?
  525.  
  526.      What type of computing experience is required to install the
  527.           package?
  528.  
  529. 11. Background of the publisher.
  530.  
  531.      References...  Who  is  using  this  or  other products from
  532.           this publisher?  How is  this company  perceived by its
  533.           customers? The press?
  534.  
  535.      How long has the publisher been in business?
  536.  
  537.      Was  the   product  Beta  Tested?...  By  valid,  well-known
  538.           organizations or by friends of the company's owner?
  539.  
  540.      Was  the  product   tested   against   any   known  viruses?
  541.           Successfully?
  542.  
  543.      What about on-going support? In what form? At what cost?
  544.  
  545.      Does the company plan to upgrade its product periodically?
  546.  
  547.      What is the upgrade policy? Expected costs?
  548.  
  549. 12. Does  the package  provide any  other useful  benefits to the
  550.      user besides virus protection?
  551.  
  552.  
  553.